$checkboxBorderRadius: 0;//3px

.nex-checkbox {
  white-space: nowrap;
  cursor: pointer;
  outline: none;
  display: inline-block;
  position: relative;
  line-height: 1;
  vertical-align: middle;

  &:hover .nex-checkbox-inner,
  &-input:focus + .nex-checkbox-inner {
    border-color: #3dbcf6;
  }

  &-inner {
	  transition: all .3s;
    &:after {
		transition: all .3s;
      -webkit-transform: rotate(45deg);
	  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
      position: absolute;
      left: 4px;
      top: 1px;
      display: table;
      width: 5px;
      height: 8px;
      border: 2px solid #ffffff;
      border-top: 0;
      border-left: 0;
      content: ' ';
    }

    position: relative;
    top: 0;
    left: 0;
    display: inline-block;
    width: 14px;
    height: 14px;
    border-width: 1px;
    border-style: solid;
    border-radius: $checkboxBorderRadius;
    border-color: #bbb;
    background-color: #ffffff;
	vertical-align:top;
  }

  &-input {
    position: absolute;
    left: 0;
    z-index: 9999;
    cursor: pointer;
    opacity: 0;
    top: 0;
    bottom: 0;
    right: 0;
  }
}

/* 选中状态 */
.nex-checkbox-checked {

  &:hover {
    .nex-checkbox-inner {
      border-color: #3dbcf6;
    }
  }

  .nex-checkbox-inner {
    border-color: #3dbcf6;
    background-color: #3dbcf6;

    &:after {
		-webkit-transform: rotate(45deg);
	  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
      position: absolute;
      left: 4px;
      top: 1px;
      display: table;
      width: 5px;
      height: 8px;
      border: 2px solid #ffffff;
      border-top: 0;
      border-left: 0;
      content: ' ';
    }
  }
}

/* 半选中状态 */
.nex-checkbox-indeterminate {
	.nex-checkbox-inner {
		border-color: #3dbcf6;
    	background-color: #FFF;
		&:after {
			-webkit-transform: rotate(0deg);
	  		-ms-transform: rotate(0deg);
		  transform: rotate(0deg);
		  position: absolute;
		  background-color: #3dbcf6;
		  left: 50%;
		  top: 50%;
		  margin-left:-3px;
		  margin-top:-3px;
		  display: table;
		  width: 6px;
		  height: 6px;
		  border: none;
		  content: ' ';
		}
	}
}

.nex-checkbox-disabled {

  &.nex-checkbox-checked {

    &:hover {
      .nex-checkbox-inner {
        border-color: #d9d9d9;
      }
    }

    .nex-checkbox-inner {
      background-color: #f3f3f3;
      border-color: #d9d9d9;

      &:after {
        border-color: #cccccc;
      }
    }
  }

  &:hover {
    .nex-checkbox-inner {
      border-color: #d9d9d9;
    }
  }

  .nex-checkbox-inner {
    border-color: #d9d9d9;
    background-color: #f3f3f3;
    &:after {
      border-color: #f3f3f3;
    }
  }

  .nex-checkbox-inner-input {
    cursor: default;
  }
}

.nex-checkbox-wrapper {
	cursor: pointer;
    font-size: 12px;
    display: inline-block;
	vertical-align:middle;
	.nex-checkbox-label {
		transition: all .3s;
		padding-left: 5px;
		padding-right: 5px;
		vertical-align: middle;
	}
}

.nex-checkbox-wrapper:not(:last-child) {
    margin-right: 8px;
}

.nex-checkbox-disabled+.nex-checkbox-label {
    color: rgba(0,0,0,.4);
    cursor: not-allowed;
}